/*
 * @lc app=leetcode.cn id=322 lang=javascript
 *
 * [322] 零钱兑换
 */

// @lc code=start
/**
 * @param {number[]} coins
 * @param {number} amount
 * @return {number}
 */
var coinChange = function(coins, amount) {
let count= [];
let length = coins.length;
//边界值 count[0]=0 
count[0] = 0;
for(let i = 1;i<=amount;i++){
    //先假定筹这个金额需要无穷多硬币
    count[i] = 100000;
    for(let j=0;j<length;j++){
        // 只有当金额数大于等于硬币金额才可以继续
        if(i>=coins[j]){
        count[i] = Math.min(count[i - coins[j]]+1,count[i])
    }
    }
}
if(count[amount] == 100000){
    return -1
}
return count[amount]
};
// @lc code=end

